* eval.c (clobbered_eassert): New macro.
authorPaul Eggert <eggert@cs.ucla.edu>
Thu, 3 Oct 2013 06:31:06 +0000 (23:31 -0700)
committerPaul Eggert <eggert@cs.ucla.edu>
Thu, 3 Oct 2013 06:31:06 +0000 (23:31 -0700)
commitc64be8b896a266b82fb6b574ea748bf6eda674ac
tree55e422cf72e47b8231a74447673d518f9b2e025c
parent7627698c5f5c96bdce8b7f36240f1c119a05a244
* eval.c (clobbered_eassert): New macro.

(internal_catch, internal_condition_case)
(internal_condition_case_1, internal_condition_case_2)
(internal_condition_case_n): Use it instead of eassert
when the argument contains locals clobbered by longjmp.
Don't use clobbered locals outside of clobbered_eassert.
(internal_lisp_condition_case): Use a volatile variable
to work around a local variable's getting clobbered.
src/ChangeLog
src/eval.c